package avicit.bdp.dcs.datasource.dto;

import avicit.bdp.common.datasource.BaseDataSource;
import avicit.bdp.common.dto.StorageResourceConf;
import avicit.bdp.common.service.dto.DataSourceDTO;
import io.swagger.annotations.ApiModelProperty;

/**
 * @金航数码科技有限责任公司
 * @作者：developer
 * @邮箱：developer@avic-digital.com
 * @创建时间： 2020-06-29 11:55
 * @类说明：jdbc数据源配置实体类
 * @修改记录：
 */
public class JobDatasource{

    // 主键
    @ApiModelProperty(value = "主键")
    private String id;

    // 数据源类型
    @ApiModelProperty(value = "数据源类型")
    private String dbType;

    // 用户名
    @ApiModelProperty(value = "用户名")
    private String jdbcUsername;

    // 明文密码
    @ApiModelProperty(value = "明文密码")
    private String jdbcPassword;

    // 加密密码
    @ApiModelProperty(value = "加密密码")
    private String encryptJdbcPassword;

    // jdbc url
    @ApiModelProperty(value = "jdbc url")
    private String jdbcUrl;

    // jdbc驱动类
    @ApiModelProperty(value = "jdbc驱动类")
    private String jdbcDriverClass;

    // 数据库名
    @ApiModelProperty(value = "数据库名", hidden = true)
    private String databaseName;

    // kerberos认证
    @ApiModelProperty(value = "kerberos认证")
    private boolean kerberos;

    @ApiModelProperty("OSS-endPoint")
    private String endPoint;

    @ApiModelProperty("OSS-accessKey")
    private String accessKey;

    @ApiModelProperty("OSS-secretKey")
    private String secretKey;

    @ApiModelProperty("OSS-bucket")
    private String bucket;

    @ApiModelProperty("系统内置数据源")
    private Integer systemBuilt;

    private DataSourceDTO dataSourceDTO;

    private BaseDataSource baseDataSource;

    private StorageResourceConf storageResourceConf;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getDbType() {
        return dbType;
    }

    public void setDbType(String dbType) {
        this.dbType = dbType;
    }

    public String getJdbcUsername() {
        return jdbcUsername;
    }

    public void setJdbcUsername(String jdbcUsername) {
        this.jdbcUsername = jdbcUsername;
    }

    public String getJdbcPassword() {
        return jdbcPassword;
    }

    public void setJdbcPassword(String jdbcPassword) {
        this.jdbcPassword = jdbcPassword;
    }

    public String getJdbcUrl() {
        return jdbcUrl;
    }

    public void setJdbcUrl(String jdbcUrl) {
        this.jdbcUrl = jdbcUrl;
    }

    public String getJdbcDriverClass() {
        return jdbcDriverClass;
    }

    public void setJdbcDriverClass(String jdbcDriverClass) {
        this.jdbcDriverClass = jdbcDriverClass;
    }

    public String getDatabaseName() {
        return databaseName;
    }

    public void setDatabaseName(String databaseName) {
        this.databaseName = databaseName;
    }

    public String getEncryptJdbcPassword() {
        return encryptJdbcPassword;
    }

    public void setEncryptJdbcPassword(String encryptJdbcPassword) {
        this.encryptJdbcPassword = encryptJdbcPassword;
    }

    public DataSourceDTO getDataSourceDTO() {
        return dataSourceDTO;
    }

    public void setDataSourceDTO(DataSourceDTO dataSourceDTO) {
        this.dataSourceDTO = dataSourceDTO;
    }

    public BaseDataSource getBaseDataSource() {
        return baseDataSource;
    }

    public void setBaseDataSource(BaseDataSource baseDataSource) {
        this.baseDataSource = baseDataSource;
    }

    public String getEndPoint() {
        return endPoint;
    }

    public void setEndPoint(String endPoint) {
        this.endPoint = endPoint;
    }

    public String getAccessKey() {
        return accessKey;
    }

    public void setAccessKey(String accessKey) {
        this.accessKey = accessKey;
    }

    public String getSecretKey() {
        return secretKey;
    }

    public void setSecretKey(String secretKey) {
        this.secretKey = secretKey;
    }

    public String getBucket() {
        return bucket;
    }

    public void setBucket(String bucket) {
        this.bucket = bucket;
    }

    public boolean getKerberos() {
        return kerberos;
    }

    public void setKerberos(boolean kerberos) {
        this.kerberos = kerberos;
    }

    public StorageResourceConf getStorageResourceConf() {
        return storageResourceConf;
    }

    public void setStorageResourceConf(StorageResourceConf storageResourceConf) {
        this.storageResourceConf = storageResourceConf;
    }

    public Integer getSystemBuilt() {
        return systemBuilt;
    }

    public void setSystemBuilt(Integer systemBuilt) {
        this.systemBuilt = systemBuilt;
    }

}